/*
    特定大小的停车场 数组cars表示
    其中1表示有车  0表示没车
    车辆大小不一，小车占一个车位(长度1)
    货车占两个车位(长度2)
    卡车占三个车位(长度3)
    统计停车场最少可以停多少辆车
    返回具体的数目

    输入描述：
      整型字符串数组cars
      其中1表示有车0表示没车
      数组长度<1000

    输出描述：
      整型数字字符串
      表示最少停车数

    示例1：
      输入
        1,0,1
      输出
        2
      说明：
        一个小车占第一个车位
        第二个车位空，一个小车占第三个车位
        最少有两辆车

     示例2:
       输入：
         1,1,0,0,1,1,1,0,1
       输出：
         3
       说明：
         一个货车占第1,2个车位
         第3,4个车位空
         一个卡车占第5,6,7个车位
         第8个车位空
         一个小车占第9个车位
         最少3俩个车
     */

function countMinCars(str) {
  let num = 0;
  let stack = [];
  str = str.split(",").join("");
  for (let i = 0; i < str.length; i++) {
    if (str[i] === "1") {
      if (i === str.length - 1) {
        num++;
      }
      if (stack.length === 3) {
        num++;
        stack = [];
      }
      stack.push(1);
    } else {
      if (stack.length) {
        num += 1;
        stack = [];
      }
    }
  }
  console.log(num);
}
// countMinCars(`1,1,0,0,1,1,1,0,1`);
// countMinCars(`1,0,1`);
countMinCars(`1,0,1,1,1,1,0,0,0,1,1,1,0,0,1,1`);
